package com.jrx.anytxn.transaction.dto.loan;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;

import java.math.BigDecimal;
import java.util.Date;

/**
 * 借款历史记录响应参数
 *
 * @Author liuzb
 * @Date 12:39 上午 星期四 2023/03/09
 **/
public class LoanHistoryVo {

    /**
     * 借据编号
     */
    @ApiModelProperty(value = "借据编号")
    private String loanId;

    /**
     * 借款流水号
     * 查询借款处理中（审批中和放款中）
     * 审批中的数据没有 loan_id，只能用 req_seq 查询
     */
    @ApiModelProperty(value = "借款流水号")
    private String loanReqSeq;

    /**
     * 借款金额
     */
    @ApiModelProperty(value = "借款金额")
    private BigDecimal loanAmount = BigDecimal.ZERO.setScale(2, BigDecimal.ROUND_HALF_UP);

    /**
     * 借款日期
     */
    @ApiModelProperty(value = "借款日期")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm", timezone = "GMT+8")
    private Date loanDate;

    /**
     * 借款结束日期
     */
    @ApiModelProperty(value = "借款结束日期")
    @JsonFormat(pattern = "yyyy/MM/dd", timezone = "GMT+8")
    private Date loanEndDate;

    /**
     * 借款状态  0.借款处理中、1.使用中、2.已逾期、3.已结清、4.失败、5.取消
     */
    @ApiModelProperty(value = "借款状态")
    private String loanStatus;

    /**
     * 获取 借据编号
     *
     * @return loanId 借据编号
     */
    public String getLoanId() {
        return this.loanId;
    }

    /**
     * 设置 借据编号
     *
     * @param loanId 借据编号
     */
    public void setLoanId(String loanId) {
        this.loanId = loanId;
    }

    /**
     * 获取 借款金额
     *
     * @return loanAmount 借款金额
     */
    public BigDecimal getLoanAmount() {
        return this.loanAmount;
    }

    /**
     * 设置 借款金额
     *
     * @param loanAmount 借款金额
     */
    public void setLoanAmount(BigDecimal loanAmount) {
        this.loanAmount = loanAmount;
    }

    /**
     * 获取 借款日期
     *
     * @return loanDate 借款日期
     */
    public Date getLoanDate() {
        return this.loanDate;
    }

    /**
     * 设置 借款日期
     *
     * @param loanDate 借款日期
     */
    public void setLoanDate(Date loanDate) {
        this.loanDate = loanDate;
    }

    /**
     * 获取 借款流水号      查询借款处理中（审批中和放款中）      审批中的数据没有 loan_id，只能用 req_seq 查询
     *
     * @return reqSeq 借款流水号      查询借款处理中（审批中和放款中）      审批中的数据没有 loan_id，只能用 req_seq 查询
     */
    public String getLoanReqSeq() {
        return this.loanReqSeq;
    }

    /**
     * 设置 借款流水号      查询借款处理中（审批中和放款中）      审批中的数据没有 loan_id，只能用 req_seq 查询
     *
     * @param loanReqSeq 借款流水号      查询借款处理中（审批中和放款中）      审批中的数据没有 loan_id，只能用 req_seq 查询
     */
    public void setLoanReqSeq(String loanReqSeq) {
        this.loanReqSeq = loanReqSeq;
    }

    /**
     * 获取 借款状态  0.借款处理中、1.使用中、2.已逾期、3.已结清、4.失败、5.取消
     *
     * @return loanStatus 借款状态  0.借款处理中、1.使用中、2.已逾期、3.已结清、4.失败、5.取消
     */
    public String getLoanStatus() {
        return this.loanStatus;
    }

    /**
     * 设置 借款状态  0.借款处理中、1.使用中、2.已逾期、3.已结清、4.失败、5.取消
     *
     * @param loanStatus 借款状态  0.借款处理中、1.使用中、2.已逾期、3.已结清、4.失败、5.取消
     */
    public void setLoanStatus(String loanStatus) {
        this.loanStatus = loanStatus;
    }

    /**
     * 获取 借款结束日期
     *
     * @return loanEndDate 借款结束日期
     */
    public Date getLoanEndDate() {
        return this.loanEndDate;
    }

    /**
     * 设置 借款结束日期
     *
     * @param loanEndDate 借款结束日期
     */
    public void setLoanEndDate(Date loanEndDate) {
        this.loanEndDate = loanEndDate;
    }
}
